package model.compresion.PPMC;

import java.io.ByteArrayOutputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.Random;

import model.registro.ConversionesTiposDatos;



import junit.framework.TestCase;

public class TestPPMC extends TestCase {

	
	
	public void testPersistencia() throws Exception{
		
		CompresorPPMC ppmc = new CompresorPPMC(4);
		
		String Datos = new String("!hola, haber si llega a descomprimir bien esto como? vamos a zafarla? Esperemos q si asi podemos ir a ver a los tipitos JAJAJA, jaja.que mentira q es esto, no anda n pa atraz");		

		byte[] bai = new byte[2];

		int pos = 0;
		for (int i=0; i< Datos.length();i++){
			bai = Datos.substring(i, i+1).getBytes("UTF-16BE");
			pos = ConversionesTiposDatos.ObtenerIdCaracterUTF16BE(bai);
			ppmc.ComprimirPPMC(pos);
			}
		
		ppmc.ComprimirPPMC(65537);//Esto finaliza la compresion
		
		//DescompresorAritmetico descomp = new DescompresorAritmetico(Compresor.getOutput());
		System.out.println("DATOS COMPRIMIDOS: ");
		ppmc.Salida().getOutput().PrintDatos();
		
		ppmc.DescomprimirPPMC(ppmc.Salida().getOutput());
	}

}
	
